load("//bzl:cpp_library.bzl", "cpp_library")

package(default_visibility = ["//visibility:public"])

cpp_library(
    name = "init",
    srcs = ["Init.cpp"],
    hdrs = ["Init.h"],
    deps = [
        ":phase",
        "//folly:portability",
        "//folly:singleton",
        "//folly/logging:init",
        "//folly/portability:config",
        "//folly/portability:gflags",
        "//folly/synchronization:hazptr_thread_pool_executor",
        "@glog",
    ] + select({
        "@platforms//os:linux": ["//folly/experimental/symbolizer:signal_handler"],
        "@platforms//os:macos": ["//folly/experimental/symbolizer:signal_handler"],
        "//conditions:default": [],
    }),
)

cpp_library(
    name = "phase",
    srcs = ["Phase.cpp"],
    hdrs = ["Phase.h"],
)
